#pragma once
#include <boost/noncopyable.hpp>
#include "ImageFwd.h"
#include "PaletteVector.h"

namespace ja2{ namespace sgp
{
	//! Font.
	class Font : boost::noncopyable
	{
		// Attributes
	private:
		//! Image used.
		ImagePtr_t m_pObject;
		//! Neutral shade palette.
		PaletteVector_t m_ShadeNeutral;
		//! Red shade palette.
		PaletteVector_t m_ShadeRed;
		//! Green shade palette.
		PaletteVector_t m_ShadeGreen;
		//! Blue shade palette.
		PaletteVector_t m_ShadeBlue;
		//! Yellow shade palette.
		PaletteVector_t m_ShadeYellow;
		//! White shade palette.
		PaletteVector_t m_ShadeWhite;
		//! Actual shade palette.
		PaletteVector_t *m_pActual;

		// Operations
	public:
		//! Create font palette tables.
		void create_palette_tables();

		// Construction/Destruction
	public:
		Font(ImagePtr_t &pVideoObj);
	};
} /*sgp*/} /*ja2*/